package 设计模式.factory.Abstract;

//抽象工厂模式不能增加具体产品
//生产产品时直接从各自的工厂调对象
// ————————————各自的工厂其实是调用了一个抽象的接口用于区分不同的类型加以实现各自的产品———————————————
public class Client {
    public static void main(String[] args) {
        System.out.println("-----小米产品-----");
        XiaomiFactory xiaomiFactory=new XiaomiFactory();
        IphoneProduct iphoneProduct = xiaomiFactory.iphoneProduct();
        iphoneProduct.callup();
        iphoneProduct.sendSMS();

        IRouterProduct iRouterProduct1 = xiaomiFactory.iRouterProduct();
        iRouterProduct1.openWIFI();
        iRouterProduct1.start();

        System.out.println("-----华为产品-----");
        HuaweiFactory huaweiFactory=new HuaweiFactory();
        IphoneProduct iphoneProduct3 = huaweiFactory.iphoneProduct();
        iphoneProduct3.callup();
        iphoneProduct3.sendSMS();

        IRouterProduct iRouterProduct4 = huaweiFactory.iRouterProduct();
        iRouterProduct4.openWIFI();
        iRouterProduct4.start();

    }
}
